package com.feige.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.feige.pojo.User;
import com.feige.pojo.dto.FriendDto;
import com.feige.pojo.vo.ChatUserVo;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 用户表 Mapper 接口
 * </p>
 *
 * @author feige
 * @since 2020-11-20
 */
@Repository
public interface UserMapper extends BaseMapper<User> {

    /**
     * 查询用户好友
     * @param map
     * @return
     */
    List<ChatUserVo> getChatUser(Map<String, Object> map);

    /**
     * 通过名字查询用户
     * @param name
     * @param userId
     * @return
     */
    List<ChatUserVo> getChatUserByName(String name,String userId);

    /**
     * 查询用户好友总数
     * @param userId
     * @return
     */
    int getChatUserTotal(String userId);

    /**
     * 添加好友
     * @author: feige
     * @date: 2021/3/3 11:23
     * @param friendDto 好友
     * @return: int
     */
    int addFriend(FriendDto friendDto);

    /**
     * 删除好友
     * @param friendDto 好友
     * @return
     */
    int deleteFriend(FriendDto friendDto);

    /**
     * 查询是否也存在该好友
     * @param friendDto
     * @return
     */
    int existsFriend(FriendDto friendDto);

    /**
     * 检查邮箱是否已授予教师权限
     * @param email
     * @return
     */
    String checkEmailAuthorize(String email);
}
